Steps to Build and Run the Docker Image
- Download the domain binary files, AdminConsole Distribution as mentioned in the Prerequisites section of this document.
- Extract the AdminConsole distribution.
-
Create a directory named externallibs to place the 3rd party application libraries, configuration and property files required.
-
Copy the downloaded AdminConsole distribution zip under the externallibs/zip directory.
-
Copy the following configuration files from <Admin Console distribution zip>/conf directory into the externallibs/conf directory:
-
ac.properties
-
ac-oipa-jmxconnection-context.xml
-
-
Copy the following files from the <Admin Console distribution zip>/libs directory into the externallibs directory:
-
commons-logging-1.3.6.jar
-
eclipselink-4.0.9.jar
-
jakarta.persistence-api-3.2.0.jar
-
jakarta.el-api-6.0.1.jar
Note: Rename all the jars without version names. This is to avoid version updates in the Docker script.
Example:
commons-logging.jar
eclipselink.jar
ojdbc.jar
jakarta.persistence.jar
-
-
If the AdminConsole application is ATP compliant, then copy the required ATP (Autonomous Transaction Processing) database files under the externallibs/shared directory. The folder structure is as follows:
-
Under the ojdbc folder, copy all the libs to the ojdbc folder
-
Under the wallet folder,
-
Note: Maintain the externallibs folder and place the required libraries and the supported files which are discussed in earlier steps. Check the below snippets for your reference.
Under the conf folder,
Note: Place the AdminConsole build artifacts that are downloaded from the Oracle Software Delivery Cloud in the externallibs/zip directory. Check the below snippet for your reference.
Provide the AdminConsole Security realm details in realm.properties file (externallibs/jmeter/).
From the copied location, execute the below command:
docker build format
$ docker build -t <Image_Name>:<Image_Tag> --build-arg APP_DOMAIN_NAME="<Domain_Name>" --build-arg APP_VERSION="<Build Release Version>"
docker build example
$ docker build -t ac_wls:12.2.0.0 --build-arg APP_DOMAIN_NAME="ac_domain" --build-arg APP_VERSION="12.2.0.0"
Containerized Admin Console
To start the containerized Admin Console application, run
docker run:
$ docker run -itd --privileged -v /path/to/the/externallibs:/u01/oracle/externallibs --env-file /path/to/the/ac_env.dat --name <Container_Name> --hostname <Container_HostName> -p <AdminServer_External_Port>:<AdminServer_Container_Port> -p <MS_External_Port>:<MS_Container_Port> <Image_Name>:<Image_Tag> createServer.sh $DB_TYPE
docker run example:
For ORACLE:
docker run -itd --privileged -v /path/to/the/externallibs: /u01/oracle/externallibs --env-file /home/ac_env.dat --name ac_wls --hostname acwlsadmin -p 8040:8040 -p 8041:8041 --sysctl net.ipv4.ip_local_port_range="1024 65000" ac_wls:12.2.0.0 createServer.sh ORACLE
For MSSQL:
docker run -itd --privileged -v /path/to/the/externallibs: /u01/oracle/externallibs --env-file /home/ac_env.dat --name ac_wls --hostname acwlsadmin -p 8040:8040 -p 8041:8041 --sysctl net.ipv4.ip_local_port_range="1024 65000" ac_wls:12.2.0.0 createServer.sh MSSQL
Make Sure you define the Database names as below only (Case Sensitive)
Oracle Database: ORACLE
SQL Database: MSSQL
Check the docker logs:
$ docker logs -f ac_wls
Note: The APP_DOMAIN_NAME build argument from the "docker build ...." command and the "--hostname" flag from the "docker run ..." commands should be the same which you denoted in the ac_env.dat file.
The following are few snippets of the Service Layer AdminConsole.
Deployment
Admin Console Data Source
Admin Console Home Page